# Copyright 2025 Marimo. All rights reserved.
print("""The marimo contract

To use marimo means entering into a social contract.
In this contract you agree
to define each variable just once,
to reference variables without cycles,
to mutate variables sparingly,
to bind variables to UI elements.

In return marimo assembles from your variables
something greater than the sum of their cells.
A reactive notebook,
a Python program,
a data app, three turns on the same perspective of
a dataflow graph.

With this dataflow graph come two simple rules,
when a cell is run all others that reference its variables run too,
when a UI element is touched, all cells that reference it run too.

From these two rules marimo is built,
reactive execution yields reproducible execution,
interactions flow from you through your code,
data and models become tangible in a meticulous construction
that's Python all the way down.

In this construction we hope you will find
simplicity
clarity
immersion
interactivity
dualities
beauty
joy.""")  # noqa: T201, W293
